/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package Session;

import ObjetoDominio.Archivo;
import Front.Vista.ObjetosComunes.Descarga;
import ObjetoDominio.Servidor;
import ObjetoDominio.Usuario;
import java.util.ArrayList;
import java.util.List;

/**
 *
 * @author familia
 */
public class Session {
    private static List<Descarga> _estaus = new ArrayList<Descarga>();
    private static List<Servidor> _servidores = new ArrayList<Servidor> ();
    private static Servidor _servidorConectado = new Servidor();
    private static Usuario _usuarioConectador = new Usuario();
    private static List<Archivo> _listaArchivo = new ArrayList<Archivo>();

    public static List<Archivo> getListaArchivo() {
        return _listaArchivo;
    }

    public static void setListaArchivo(List<Archivo> _listaArchivo) {
        Session._listaArchivo = _listaArchivo;
    }

    public static Usuario getUsuarioConectador() {
        return _usuarioConectador;
    }

    public static void setUsuarioConectador(Usuario _usuarioConectador) {
        Session._usuarioConectador = _usuarioConectador;
    }
    private static boolean _sesion;

    public static boolean isSesion() {
        return _sesion;
    }

    public static void setSesion(boolean _sesion) {
        Session._sesion = _sesion;
    }

    public static List<Descarga> getEstaus() {
        return _estaus;
    }

    public static void setEstaus(List<Descarga> _estaus) {
        Session._estaus = _estaus;
    }

    public static Servidor getServidorConectado() {
        return _servidorConectado;
    }

    public static void setServidorConectado(Servidor _servidorConectado) {
        Session._servidorConectado = _servidorConectado;
    }

    public static List<Servidor> getServidores() {
        return _servidores;
    }

    public static void setServidores(List<Servidor> _servidores) {
        Session._servidores = _servidores;
    }
    
    public static boolean VerificarServidores(){
        for (Servidor servidor : _servidores) {
            if(servidor.isActivo()){
                _servidorConectado = servidor;
                System.out.println("Intentado con " +  _servidorConectado.getIp() + " " + _servidorConectado.getPuerto() + " " + _servidorConectado.getPuertoSecundario());
                return true;
            }else
                System.out.println(servidor.getIp() + " " + servidor.getPuerto() 
                        + " " + servidor.getPuertoSecundario() + "inactivo");
        }
        return false;
    }
    
    public static void LimpiarSession(){
        _estaus = new ArrayList<Descarga>();
        for (Servidor servidor : _servidores) {
            servidor.setActivo(true);
        }
        VerificarServidores();
        _usuarioConectador = new Usuario();
    }
    
}
